<?php

class PdoHistorique extends PdoConnect {

    public function create(historique $historique) {
        try {
            $this->open();
            $sql = "INSERT INTO `historique`(IDHISTORIQUE, DATEHISTORIQUE) VALUES(?, ?) ";

            $prep = $this->pdo->prepare($sql);

            $prep->bindValue(1, $historique->getIdHistorique(), PDO::PARAM_INT);
            $prep->bindValue(2, $historique->getDateHistorique(), PDO::PARAM_STR);
            $

            $prep->execute();
        } catch (PDOException $e) {
            $msg = 'ERREUR PDO dans ' . $e->getFile() . ' L.' . $e->getLine() . ' : ' . $e->getMessage();
            die($msg);
        }
    }

    public function readAll() {
        try {
            $this->open();
            $sql = "SELECT * From `historique` ORDER BY DATEHISTORIQUE";
            $prep = $this->pdo->prepare($sql);

            $prep->execute();
            $prep->setFetchMode(PDO::FETCH_ASSOC);


            return $prep;
        } catch (PDOException $e) {
            $msg = 'ERREUR PDO dans ' . $e->getFile() . ' L.' . $e->getLine() . ' : ' . $e->getMessage();
            die($msg);
        }
    }

    public function readOne($IdHistorique) {
        try {
            $this->open();
            $sql = "SELECT * From `historique` Where IdHistorique=$IdHistorique";
            $prep = $this->pdo->prepare($sql);

            $prep->execute();

            $historique = new Historique();
            $ligne = $prep->fetch(PDO::FETCH_OBJ);
            $historique->setIdHistorique($ligne->IDHISTORIQUE);
            $historique->setDateHistorique($ligne->DATEHISTORIQUE);

            return $historique;
        } catch (PDOException $e) {
            $msg = 'ERREUR PDO dans ' . $e->getFile() . ' L.' . $e->getLine() . ' : ' . $e->getMessage();
            die($msg);
        }
    }

    public function delete(historique $historique) {

        try {
            $this->open();
            $sql = "DELETE FROM historique WHERE IDHISTORIQUE=?";

            $prep = $this->pdo->prepare($sql);

            $prep->bindValue(1, $historique->getIdHistorique(), PDO::PARAM_INT);
            $prep->execute();
        } catch (PDOException $e) {
            $msg = 'ERREUR PDO dans ' . $e->getFile() . ' L.' . $e->getLine() . ' : ' . $e->getMessage();
            die($msg);
        }
    }

    public function update(historique $historique) {
        try {
            $this->open();
            $sql = "UPDATE historique SET DATEHISTORIQUE= ? WHERE IDHISTORIQUE= ?";

            $prep = $this->pdo->prepare($sql);

            $prep->bindValue(1, $historique->getIdHistorique(), PDO::PARAM_INT);
            $prep->bindValue(2, $historique->getDateHistorique(), PDO::PARAM_STR);

            $prep->execute();
        } catch (PDOException $e) {
            $msg = 'ERREUR PDO dans ' . $e->getFile() . ' L.' . $e->getLine() . ' : ' . $e->getMessage();
            die($msg);
        }
    }

}
